Methods and apparatuses for automatically selecting a pipe in a cad

ABSTRACT

The present invention is directed to methods, systems, and apparatuses for automatically determining a object type in a computer automated design application, and more particularly to automatically determining and drawing the pipe type of a pipe in a sprinkler system CAD drawing. The present invention allows a user to make various pipe parameter choices and decisions up front, and to then draw each individual pipe without having to each time make the numerous selections and decisions required to determine that pipe&#39;s proper type. The present invention may also be used to determine other component types in non-piping related CAD designs, such as electrical wiring, for example.

CROSS-REFERENCES TO RELATED APPLICATIONS

This is a utility patent application, taking priority from provisionalpatent application Ser. No. 60/915,206, filed May 1, 2007 and61/072,734, filed Apr. 2, 2008.

BRIEF DESCRIPTION OF THE INVENTION

The present invention is directed to methods, systems, and apparatusesfor automatically determining a object type in a computer automateddesign application, and more particularly to automatically determiningand drawing the pipe type of a pipe in a sprinkler system CAD drawing.

STATEMENT AS TO THE RIGHTS TO INVENTIONS MADE UNDER FEDERALLY SPONSOREDRESEARCH OR DEVELOPMENT

Not Applicable.

REFERENCE TO A “SEQUENCE LISTING,” A TABLE, OR A COMPUTER PROGRAMLISTING APPENDIX SUBMITTED ON A COMPACT DISK

Not Applicable.

BACKGROUND OF THE INVENTION

Computer aided design systems (often called CAD systems) have been usedfor years to help engineers, technicians, and architects design a widevariety of items and products. CAD users are able to utilize suchcomputer programs to design projects ranging from small mechanical partsthat will be machined from metal stock to automobiles, airplanes,bridges and multiple-story high-rise office buildings and hotels to bebuilt by huge teams of contractors and workers. Today, CAD systems areavailable that are able to model and manipulate, in real-time, verylarge numbers of interrelated parts or components in both two-dimensions(2D) and three-dimensions (3D).

Many computer programs are commercially available that tailor the basicCAD framework for specific engineering purposes. For example,AutoSPRINK®, developed and sold by M.E.P. CAD, Inc. (assignee of thepresent invention), is a stand-alone computer aided design program foruse in automating the design of a building control system, such as asprinkler system or an HVAC system. Such specifically tailored CADprograms are able to run on widely available personal computers runningpopular operating systems like Microsoft®Windows®. Such a program allowsa user to visualize, in three-dimensional space on his or her desktopcomputer, the available design space, such as a specific floor of ahigh-rise building, so that the user may lay out piping, ducts,electrical traces, cable trays, etc.

The use of CAD software applications, such as AutoCAD® by Autodesk,Inc., is well known in the art. CAD software is often used by architectsand engineers to prepare a CAD model or models representing differentphysical objects, such as a mechanical device, a bridge, a building, anautomobile, and airplane, etc., Such objects include many differentparts. A building typically includes its structural components,including the beams, columns, walls, floors, windows, doors, etc. (the“frame”). The bigger and more complicated the building, the greater thelikelihood that CAD software, either 2D or 3D, will be used to do thedesign. The design of a building is also collaborative and iterativeprocess. After the frame is designed by architects and structuralengineers to create a CAD drawing of the building, the building drawingis then sent to other designers or subcontractors to add theircomponents to the building design, including HVAC ducting, plumbinglayouts, electrical components and fire sprinkler lines etc.

Many of these designers will use the CAD program in which the buildingdrawing was originally created, sometimes using add-on programs thatwere designed for their industry, i.e., plumbing, electrical, HVAC,etc., to add their components. Additional programs, such as AutoSPRINK®could be used to both create the base drawings and to add subcontractdesigns, such as fire sprinkler systems. Program such as AutoSPRINK arecapable of importing or exporting different types of CAD files.

To move the design of subcontracted components along as quickly aspossible, the subcontractors often work on their modifications to abuilding design in parallel to one another. The parallel modified CADdrawings produced by the subcontractors are then combined to create acomplete design. While faster in some ways, this parallel processcreates conflict problems, such as where a plumbing line input by onesubcontractor conflicts with an HVAC duct input by another. Hence,extensive design review and meetings to identify and correct conflictsare often required.

JetStream™ software, formerly produced by NavisWorks Ltd. and now ownedby Autodesk, Inc., is an example of a collaborative design reviewproduct for 3D designs that works in conjunction with AutoCAD and thatis intended to simplify the conflict correction process. For example, ithas the ability to identify where conflicts or clashes exist and cangenerate reports of all of the conflicts and distances by which eachconflict occurs. The subcontractor that created the conflict would thenbe expected to resolve it and submit a new drawing, but this is not assimple as it sounds.

In a large drawing, there may be hundreds of different conflicts createdby many different subcontractors. Moving a pipe, duct or cable tray toresolve one conflict, may simply create more conflicts. Likewise, simplyknowing the distance by which a conflict occurs does not provide thesubcontractor with all of the information necessary to completelyresolve the conflict for any give area and not create others.Furthermore, even though a subcontractor may only be responsible for ahandful of conflicts, that subcontractor would typically be sent theentire drawing with all of the different subcontractor conflicts and avideo and/or a conflict report, and be expected to find their conflictsand resolve them. As a result, a first conflict resolution meeting ordesign review will often be followed by many more conflict resolutionmeetings as the correction of one set of conflicts can generate manymore. Thus, even though programs like JetStream can be helpful, theypresent less than a complete solution.

As these CAD drawings are very large and contain a large number ofpipes, ducts, vents, sprinklers, etc., it is desirable to have acomputer program identify and then resolve a large number of conflictsall at once. It is also desirable to have a computer program that canautomate various time-consuming drafting procedures, such as choosingwhich type of pipe to use for a specific purpose or choosing which pipeto connect a vast array of sprinkler heads to.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING

FIG. 1 is an illustration of an arm around in accordance with thepresent invention;

FIG. 2 is an illustration of an Arm Around dialog box utilized in a CADdrawing program in accordance with the present invention;

FIG. 3 is an illustration of the Arm Around dialog box of FIG. 2;

FIG. 4 is an illustration of a dialog box including a Smart Pipeinterface in accordance with the present invention;

FIG. 5 is another illustration of a dialog box including a Smart Pipeinterface;

FIG. 6 is an illustration of a Pipe Properties dialog box;

FIG. 7 is an illustration of a modify selected Pipes dialog box;

FIG. 8 is an illustration of a flexible drop used to connect a sprinklerhead to a sprinkler system pipe in accordance with the presentinvention;

FIG. 9 is another example of a flexible drop, additionally illustratingthe use of a hard pipe arrangement in accordance with the presentinvention;

FIG. 10 is an illustration of a Connect Pipes to Sprinkler dialog box inaccordance with the present invention;

FIG. 11 is an illustration of a Connect Sprinklers to Pipes dialog boxin accordance with the present invention; and

FIG. 12 is an illustration of a Flex Drop properties dialog box within aCAD drawing program in accordance with the present invention, and alsoshows a user-adjustable flexible drop previously automatically placed.

DETAILED DESCRIPTION OF THE INVENTION

The present inventions are directed to methods, apparatuses/systems, andcomputer-readable medium embodying software for performing the methodsand enabling the systems for processing and/or modifying a CAD drawingto resolve conflicts between existing components and automating theselection and drawing of objects, such as pipes andpipe-to-sprinkler-head connections, throughout the CAD drawing. In itspresently preferred embodiment, the invention is an add-on feature for asoftware program written in C++ (although it could readily be written inVisualBasic and/or Autolisp), the software program operating in astand-alone fashion or in conjunction with the AutoCAD platform byAutodesk, Inc. The present invention is not limited to the AutoCADplatform and could be utilized in conjunction with any CAD program. Asutilized in conjunction with AutoCAD, once installed, the presentinvention would be incorporated into the standard menu bar for theAutoCAD program, so that it was readily accessible within the AutoCADsystem.

The presently disclosed invention includes add-on features to presentlyexisting CAD software and includes systems, methods, apparatuses, andcomputer programs for resolving CAD drawing conflicts in real time andfor automating the selection of objects, including pipes and the drawingof pipe-to-sprinkler-head connections. Throughout this specification theinvention will, for the most part, be referred to as a system. Thisspecification, however, intends to cover the presently disclosedinventions as methods for automatically improving, adding additionalfeatures to, and processing various piping-related features of a CADapplication, computer programs for automatically improving, addingadditional features to, and processing various piping-related featuresof a CAD application, and apparatuses for automatically improving,adding additional features to, and processing various piping-relatedfeatures of a CAD application.

Where this specification refers to the system's characteristicsdescribed herein, note that the same description applies to relatedmethods, apparatus, and computer programs. Additionally, as thisinvention involves CAD drawings that are 2D or 3D representations ofphysical building construction components (beams, columns, walls,piping, ducts, etc), where, for example, the specification refers to a“pipe” or a “duct”, the intention is to describe the CAD drawingrepresentation as seen by a user on his or her computer screen, asopposed to a real physical “pipe” or “duct.” A reader should also notethat in all cases a CAD drawing may be either 2D or 3D, or perhaps maybe convertible between 2D and 3D, regardless of whether thisspecification describes a particular feature or function as being 2D or3D.

The process of designing sprinkler, HVAC, etc., systems in largebuildings such as office buildings, hotels, casinos, and schools, iscomplex and involves many different people working on many differentaspects. All sorts of piping, vents, and ducts must be situated so thatthey are effective and cost efficient without conflicting with eachother or conflicting with necessary weight-bearing beams, columns andother structural elements. Often each system (HVAC, sprinkler, plumbing,etc.) is designed separately by entirely different people or teams ofpeople.

After completing their own draft design, these groups meet to discussthe inevitable real or potential conflicts. For example, a proposedheating duct may pass right through various proposed plumbing pipes. Inthis case, the heating duct may be referred to as an obstruction, or theobstruction, for which a proposed arm around is needed so that theplumbing pipes may reach their desired destination and thus befunctional. In the context of the present invention, an “arm around” isa pipe design that allows a pipe, that would have gone straight to itsintended destination if not for an obstruction, to reach its intendeddestination by detouring, or re-routing, around the obstruction.Although the invention is described in the context of a building designapplication, and in particular in the context of a fire sprinkler designsystem, the present invention could be utilized in the design ofanything that could be designed using a CAD application. For example, anarm around could be utilized for routing wiring in a car design aroundsome obstruction, or hydraulic lines in an airplane design, etc.

A method of creating an arm around for a fire sprinkle system involvescutting a pipe in two places: once at the beginning of the obstruction(called the first cut line) and again at the end of the obstruction(called the second cut line). Usually three relatively small segments ofpipe are then fitted together, with the usual configuration being thatthe first segment is perpendicular to the original pipe, the secondsegment is parallel to the original pipe, but in a plain that does notintersect with the obstruction, and the third segment is againperpendicular to the original pipe and connects the parallel segment tothe original pipe at the second cut line, completing the pipe.

An example of an arm around is illustrated in FIG. 1. Arm around 10 isnecessary to avoid obstruction 20. Original pipe 30 is cut at first cutline 31 and at second cut line 32. First perpendicular segment 41protrudes out from first cut line 31, then parallel section 42 (whichmay be referred to as the “moved pipe” segment) follows original pipe 30past obstruction 20 and intersects with second perpendicular segment 42,which then joins original pipe 30 at second cut line 32. In this way,original pipe 30 is able to reach its intended destination whileavoiding obstruction 20. The method, apparatus, and system forautomatically creating such arm arounds within a CAD drawing is referredto as “Arm Around” (capitalized). The presently disclosed invention,which may be referred to as the Arm Around add-on feature (or the ArmAround utility) for CAD software programs, allows for easy, real timeresolution of obstruction conflicts.

The present invention is relevant at the point in time after thestructure, various piping, and various duct systems have been initiallyplaced, or proposed, within the work space. These systems may initiallybe designed without concern for conflicts. After initial drafting anddesign, the disclosed CAD drawing conflict resolution system may beginby identifying all conflicts. The present invention may also work withpreviously identified conflicts by resolving conflicts previouslyidentified by another program. Found conflicts are listed in a conflictlist window, and are also highlighted within the on-screen 3D (or 2D, ifso desired) representation of the overall design. The overall 3D or 2Drepresentation will be referred to as the CAD drawing, while the ArmAround system and user-customizable options are contained in the ArmAround dialog box 200, first illustrated in FIG. 2.

Conflicts may be identified within a CAD drawing by highlightingconflicted objects by color or by so-called “conflict bubbles” or “alertbubbles”, which highlight a conflict with different colored, transparentbubbles- or balloon-shaped polygons that can be easily identified onscreen. Then, the user may select one or more conflicts he or she wishesto work on presently. Such a selection may be accomplished in any numberof ways. For example, a user may click on, or select, a pipe within theoverall drawing and then may select an Arm Around icon from a menu ortool bar button in order to bring up the Arm Around dialog box 200.Alternatively, a user may directly select the Arm Around icon and bringup the dialog box 200, which then may show a list of all identifiedconflicts.

The Arm Around dialog box 200 includes a listing of one or more pipeswhich have been identified as being in conflict with at least one otherCAD drawing component. The list has information to identify eachconflicted pipe which can include, for example, a componentidentification number, a description of the pipe in terms of diameter,material, and/or length, and a description of the location (either anabsolute location or a relative location in regard to other componentsor convenient landmarks).

Conflicts are resolved by altering the smaller diameter pipe or pipes sothat they avoid large obstructions. This is accomplished by creating anarm around as described above. Such an arm around may take the pipeabove the other component, below the other component, to the right ofthe other component, to the left of the other component, or may find amore desirable angled solution utilizing a 180 or 360 degree search. Theuser may elect to design the arm around them self or elect to allow thesystem to automatically determine which method of movement will be mostcost efficient, most material/resource efficient, or most easilyaccomplished. In either case, the user may select the desired clearancebetween the pipe and the obstruction. For example, a user may choose torequire a one inch clearance between the two components, and in such acase the system would only propose one or more resolutions that providefor a one inch clearance between the two previously conflictingcomponents.

Once the user has selected the way in which the user wishes to resolvethe chosen conflict(s), the system automatically calculates the requiredarm around to resolve the conflict. This system calculated solution maybe referred to as a “proposal.” The system may then temporarily draw theproposal into the CAD drawing to a user specified “clearance” distancefrom the object. This temporarily drawn proposal may be referred to as a“ghost” line, and is useful to the user because it uses simplepencil-type lines (which may be dashed) to show where the proposed armaround will be located relative to existing components, withoutrequiring the heavy computer processing power which may be needed todraw full-scale 3D piping. Once the user determines whether he or shewishes to use the initial proposal, the user may select to accept theproposal, and then the ghost line is replaced with actual CAD-drawn 3Darm around piping.

There are, of course, many possible variations of the above-describedconflict avoidance CAD add-on system that will be apparent to thoseskilled in the art. For instance, a user may be able to select multipleconflicts as a group, and then apply a single set of chosen parametersto all of the conflicts within the group at once. An example would be toselect all instances of various pipes in conflict with a particularventilation duct, and then to ask the system to propose a clearance of 4inches using the shortest amount of piping possible while maintainingright angles. Such a set of chosen parameters may be applied to a groupof conflicts all at once. Another example would be to ask the system toselect all identified conflicts within a specified work area (on theseventh floor of the office building, for example) and then to requestproposed arm arounds with a 2 inch clearance above the knownobstructions. Any permutations of the disclosed arm around system arepossible, and all such permutations that would be obvious to a personskilled in the art are intended to be within the scope of thisdisclosure.

FIGS. 2 and 3 illustrate an example embodiment of the herein disclosedCAD drawing conflict resolution system. FIG. 2 shows an example CADprogram computer screen 100 that a user would encounter while usingAutoSPRINK, or another comparable CAD drafting software program. A userwould see 3D representation 101 of his or her design, and various menusand icons 120 which provide drafting and modification options. In orderto utilize the herein disclosed CAD drawing conflict resolution system,a user must access Arm Around dialog box 200. Arm Around dialog box 200may be accessed by selecting either the Arm Around button 122 in theleft-side tool bar, or by selecting the Auto Draw drop-down menu 121 atthe top of the screen, and then selecting Arm Around within that dropdown menu 121.

FIG. 3 illustrates a detailed example of the Arm Around dialog box 200.Conflict list 220 shows a listing of the identified conflicts availablefor conflict resolution. Conflict list 220 contains four informationcolumns shown in FIG. 2. These include a “Pipe” column for listing theCAD drawing identification of each conflicted pipe; a “Location” columnfor listing a description of the location of the pipe either relative toother CAD drawing components or an absolute location; an “AssignedOption” column which contains boxes for each listed conflict which mayeach be checked by a user; and an “Accepted Proposal” column whichcontains boxes for each listed conflict which may each be checked by auser. It is also possible to include either more information or lessinformation in conflict list 220, by including more, less, or differentinformation columns. For instance, an information column may be includedwhich describes the parameters of each conflicted pipe, such asdiameter, width, length, purpose, and/or material composition. Any andall permutations of pipe information may be included in the conflictlist 220, as will be appreciated by those skilled in the art.

There are several ways in which a user may get CAD application orAutoSPRINK conflicts into the Arm Around conflict list 220. First, theCAD application or AutoSPRINK may automatically identify conflicts thatare then automatically inserted into conflict list 220 when a useraccesses Arm Around dialog box 200. Second, a user may self-selectapparent, known, or identified (by conflict bubbles) conflicts in mainCAD drawing 101, and then click on Update Conflicts button 221 to bringthese self-selected conflicts into conflict list 220 if Arm Arounddialog box 200 is already open, or self-select conflicts in main drawing101 and then access Arm Around dialog box 200 as described above. Third,a user may define a certain work area within the main CAD drawing 101,and the system will automatically identify any conflicts within thearea. These identified conflicts are then either automatically includedin conflict list 220 when the user opens Arm Around dialog box 200, orcan be brought into a previously opened Arm Around dialog box 200conflict list 220 by the user clicking Update Conflicts button 221.

A user may then select various options for how to resolve the conflictslisted in conflict list 220. First, the user may select which conflictor conflicts the user wishes to assign options to (more than oneconflict or resolution may be selected at a time by checking therespective boxes within the Assigned Options column of conflict list220). When the desired conflicts are selected, the program mayautomatically center the selected obstruction in the drawing for ease ofviewing then a user may choose the desired distance to stay away fromeach obstruction at 233, and/or the desired method of avoiding eachobstruction at 234. The desired distance to stay away from eachobstruction means how much clearance, in units of measure such as inchesor centimeters, each pipe should have around each obstruction. Forexample, choosing 4 inches at 233 would force the disclosed system topropose a solution wherein the piping is kept at least 4 inches awayfrom the obstruction as it works its way around the obstruction. Morecomplex “stay away” options may be selected by a user. Looking tooptions 233, it may be possible for a user to select different optionsfor the three different parts of the Arm Around: the Moved Pipe Segment,the first cut line segment, and the second cut line segment. It is alsopossible to use the same distance value for all three segments, and thismay be done by the user clicking on the “Use the same value for each:”box at 233.

At options 234, a user may select the desired method of avoiding eachobstruction. For example, a user may select to avoid the obstruction bymoving the pipe Above, Below, to the Left, or to the Right, by clickingon the appropriate button at 234. When a user makes this selection, thesystem may then respond by displaying the “ghost” proposal line for eachchosen option. A user may instead choose to have the system calculatethe shortest route possible to sufficiently avoid the obstruction, byclicking on the Shortest button at 234. If a user selects the Shortestbutton at 234, the user may then be able to select search angles to becreated by the Arm Around, by choosing angles below 180 degrees or allangles 360 degrees. When this selection is made, the system will searchin a 180 or 360 degree pattern around the obstruction for the shortestclearance route with the appropriate specified clearance. Within options234, a user may click the “Avoid Future Obstructions” button, which willensure that proposed arm arounds do not create additional conflicts bycoming in contact with additional obstructions while avoiding theoriginal conflict. For example, if a user uses Arm Around to find an armaround for a pipe in conflict, the proposed arm around may itself comeinto conflict with another object that is in close proximity to theoriginal obstruction. By selecting “Avoid Future Obstructions”, thesystem will redraw the arm around proposal line to avoid all otherobstructions at once.

In addition to selecting options related to how each Arm Around proposalwill be calculated at 233 and 234, a user may also choose severaladditional preferences. Clicking box 235 will force the Arm Aroundsystem to automatically draw fittings or connectors for the proposed ArmAround when the full 2D or 3D pipe drawing is created from the proposalline. By clicking on box 230, a user is able to force the system tocalculate proposals that avoid all known conflicts at once for one ormore specific pipes. For example, one pipe may be conflicting withseveral obstructions with each showing a proposal line to avoid theobstruction. By selecting box 230, the system will automatically deleteall the individual obstruction proposals and display a new proposal linethat will avoid all conflicts at one time. By clicking on button 237, auser is able to apply all the selected options from 233 and 234 to allremaining conflicts in conflict list 221. By clicking on button 236, auser is able to accept all proposals that have been checked within theAssigned Options column of conflict list 220, or within the AcceptedProposal column of conflict list 220, to initiate piping all selectedobstructions. Buttons 238 and 239 give the user the option of selectingthe view of the arm around and conflict area that will be shown to theuser within the drawing. Finally, by clicking button 240, a user is ableto close Arm Around dialog box 200.

In addition to the above described CAD drawing conflict avoidance ArmAround add-on feature, additional CAD software add-on features will bedescribed. A method, system, and apparatus for automatically selecting apipe will now be described. This may alternatively be referred to as aSmart Pipe Interface. As with the above described CAD drawing conflictresolution system, the Smart Pipe Interface will generally be referredto herein as a system. This specification does, however, intend toinclude within its scope the related methods of automaticallydetermining a system pipe type, the related computer program forautomatically determining the proper system component pipe type, and therelated apparatus for automatically determining the proper systemcomponent pipe type. i.e. crossmain, breanch line, riser nipple etc. Themethod, system, and apparatus for automatically determining a pipe, whenutilized by a user, allows for simplified drawing of pipes for use insprinkler, plumbing, and other building system designs.

The herein described Smart Pipe Interface allows a user to pre-selectvarious pipe parameters that are later automatically applied to pipesdrawn into the overall CAD drawing. For example, a user only has toselect a pipe size from a CAD computer program pipe-drawing menu, andthen draw the pipe where he or she desires. Then, the Smart Pipe systemapplies a series of predetermined rules and previously user-chosenparameters (size, orientation, location, association, etc.) to decidethe system component Type (crossmain, branch line, riser nipple, etc.)or Material (Schedule 40, etc.), for example. The disclosed Smart PipeInterface saves a significant amount of time for users by allowing themto simply choose a diameter or other parameter up-front and thenconcentrate on drawing/drafting without having to make a myriad ofdecisions on each and every pipe drawn. Alternatively, the Smart PipeInterface also allows a user to change his or her mind after drafting amyriad of pipes, and alter the characteristics of the many pipes all inone place—without having to click on each pipe individually and changeits individual characteristics. The system will also correct any pipesthat were drawn incorrectly by selecting them and applying an automatedcleanup function.

A Smart Pipe Interface may utilize one or more rules that may beadjustable by a user as well as one or more rules that may not beadjustable by a user to automate the determination of a pipe type. Forexample, a rule stating that “pipes touching like pipes will become thesame pipe” may be utilized. Such a rule may or may not be adjustable bythe user. An example of a rule that may be user adjustable may be “pipesthat are between 1 and 2½ inches are to be Schedule 10 material.” Such arule may be adjustable so that, for example, a user may choose to decideinstead that “pipes that are between 1 and 2 inches are to be Schedule40 material.” These rules may be utilized so that, for example, when auser selects a pipe of 2 inch diameter and draws that pipe from a branchline to another branch line, the pipe being drawn will automatically beset by the Smart Pipe interface as Schedule 10 material and as a branchline.

The following automatic pipe selecting rules are a non-exhaustive listof non-user-adjustable rules that may be utilized by the hereindisclosed Smart Pipe Interface:

-   -   If the pipe is smaller than, or equal to the Branch Line cutoff        [Branch Line cutoff is set by the user], the pipe will be a        Branch Line.    -   If the pipe is vertical and is larger than the Branch Line        cutoff, the pipe will be a Feed Riser.    -   If the pipe is horizontal and larger than the Branch Line        cutoff, the pipe will be a Cross Main.    -   If the pipe connects a Cross Main or Feed Main to a Branch Line,        the pipe will be a Riser Nipple.    -   If the pipe connects a Feed Riser and a Cross Main, and is        horizontal, the pipe will be a Feed Main.        -   If this same pipe connects to an Upright Sprinkler, the pipe            will be a Sprig.        -   If this same pipe connects to a Sidewall or Pendent            sprinkler, the last pipe touching the sprinkler will be a            Drop and the remainder will stay a branch line.    -   If both ends of the pipe are connected to a Branch Line, the        pipe will be a Branch Line.    -   If both ends of the pipe are connected to a Cross Main, the pipe        will be a Cross Main.    -   If both ends of the pipe are connected to a Feed Main, the pipe        will be a Feed Main.    -   If both ends of the pipe are connected to a Feed Riser, the pipe        will be a Feed Riser.    -   If both ends of a Branch Line pipe are connected to a Riser        Nipple, the pipe will remain a Branch Line.    -   If both ends of the pipe are connected to a Sprig, the pipe will        be a Sprig.    -   If both ends of the pipe are connected to a Drop, it will remain        a branch line.    -   If the pipe is a Feed Main and is collinear with a Cross main,        the pipe will be a Cross Main.    -   If both ends of the pipe are at below true zero elevation in the        drawing, the pipe will be an Underground pipe. (Note that this        rule may instead be user-adjustable.)    -   Pipes touching like pipes will become the same pipe except for        pipes touching riser nipples on both ends.        Of course, many additional rules and many alternatives of the        rules listed above are possible and will be apparent to those        skilled in the art. A user may also choose to individually        define pipes in a manner different than the predefined rules        and/or different than the user-determined rules. To override the        Smart Pipe rules, a user may select an override option when        initially drawing a pipe or may instead select an override        option on a previously drawn pipe.

FIG. 4 illustrates an example embodiment of the disclosed system forautomatically determining a pipe, which may also be referred to as theSmart Pipe Interface. FIG. 4 is a screen shot of Fabrication Standardsdialog box 400. Fabrication Standards dialog box 400 may be accessed bya user by selecting “Fabrication Standards” from an AutoSPRINK drop-downmenu or icon located in a tool bar, or from similar menus or tool barsin other available CAD drawing programs. A user may start a process ofselecting various pipe preferences by selecting, or clicking on, “Pipes”tab 410 at the top of Fabrication Standards dialog box 400. A user canalso select various Pipe Groups from Pipe Group drop-down list 420. PipeGroup drop-down list 420 contains a list of each group of availablepipes, and may contain, for example, Pipe Groups T, W, X, P, and C, aswell as Pipe Groups 1, 2, 3, 4, 5, 6, 7, 8, and 9. Once a user selects aPipe Group at 420, the user may then select various parameters whichwill be automatically assigned to each pipe of that group. For example,if a user selects Pipe Group “T” at 420, the user can select parametersfor all “T” Group pipes the user has previously drawn in the overall CADdrawing and all “T” Group pipes that will be drawn. Then, the user canselect another Pipe Group, “W” for example, and select parameters forall “W” Group pipes previously drawn or that will be drawn.

For each group in drop-down list 420, a user may select Material, Layer,and Width parameters for each size pipe within a chosen Pipe Group. AtSmart Pipe sized-based parameters listing 430, a user can set theMaterial type for each different size pipe within the chosen “T” PipeGroup (which, as described above, is selected at 420). For example, FIG.4 at 430 shows that pipe size “1½ will be “Schedule 40” while pipe size“3” will be “Schedule 10”. Compare to FIG. 5, which shows Pipe Group “W”selected at drop-down list 420. In FIG. 5 at 430, pipe size “1½” will be“Schedule 10” and pipe size “3” will also be “Schedule 10.” Thedifference is that in FIG. 4 the user has selected Pipe Group T at 420,while in FIG. 5 the user has selected Pipe Group W at 420.

The purpose of Smart Pipe size-based parameters listing 430 is so that auser may set these parameters to his or her desired settings. A user mayclick into any entry within listing 430 to edit that listing. Forexample, a user may change any Material, Layer, or Width for anyparticular Size. It is also possible to include more columns withinlisting 430, so that other additional parameters may be set for eachspecific pipe size, as those skilled in the art would appreciate. A usermay also add additional sizes to listing 430, as well as delete certainsizes. To add a size-based parameter a user may click button 431(“New”), and a new row will appear in listing 430. To remove a listedsize-based parameter, a user may select a size row to highlight it, andthen may click button 432 (“Delete”), and the highlighted row will bedeleted. Listing 430 will have default values which may be predeterminedby a manufacturer or retailer. To restore such default values afterchanges have been made, a user can click on button 433 (“Defaults”). Auser is also able to select various types of pipes to which parameterslisting 430 will not apply, but will instead be overridden by a separateset of parameters. Override listing 435 allows a user to apply analternative Material, Layer, Width, etc., parameter list to specifictypes of pipe. For example, FIG. 4 shows a user having chosen Drop typepipes (represented by the initials “DR” within override listings 435) tobe set at material Schedule 40, no matter what size they are. In otherwords, the material of each drawn pipe will be determined by size-basedparameter listing 430 unless the pipe is of a particular type listed inoverride listing 435, in which case that particular pipe material willbe set by the override listing 435.

Fittings for each pipe may also be automatically selected by thedisclosed system. AutoSPRINK users and CAD program users must decidewhether pipes drawn into the overall CAD drawing are to use outlets orfittings. Fitting selection interface 440 allows a user to make theseselections upfront and then apply such selections to all pipes drawnhenceforth. All the various types of pipes are listed at 440, includingDrops, Sprigs, Branch Lines, Riser Nipples, Cross Mains, Feed Mains,Feed Risers, and Underground. For each type of pipe that a user wishesto use a fitting instead of an outlet, the user would check or click theaccompanying box. For example, FIG. 4 for a “T” pipe group shows Drops,Sprigs, Branch Lines, and Riser Nipples selected, but Cross Mains, FeedMains, and Feed Risers not selected. FIG. 5, on the other hand, for a“W” pipe group shows similar user fitting selections at 440, except thatBranch Lines are not selected.

A user also has the option to select all the types of pipes forfittings; the user can do this by clicking on button 441. Each selectedpipe type will be automatically drawn prepared for a fitting instead ofan outlet. A user may also select the type of fitting to beautomatically drawn. In FIG. 4, there is a button with the letter “T” onit next to Drops, Sprigs, Branch Lines, and Riser Nipples, there is abutton with the letter “G” on it to provide a grooved end perperationfor Feed Mains, and Feed Risers, and there is a button with the letters“PE” on it to provide plain end pipe preparation for all Undergroundpipe. The letters represent a type of end of pipe preparation for whichthe program will provide the appropriate size and type fitting throughvarious additional commands; for example, the letter “T” represents“threaded” end preparation, and the letter “G” represents “grooved” pipeend preparation. A user may manually attach the type of fitting from anyof the fitting buttons and a drop-down fitting-type menu will appear,from which a user can select the type of fitting to be applied to eachpipe (elbow, tee, cross etc.). A user may also initiate a cleanupfeature of the program that will transform a pipe to the correct sizeand end preparation type based on the end preparation of the pipe it wasplaced on. This process may be completely automated by selecting allpipes that are to obtain fittings. Based on their geometry relative toone another, their size, and their pipe end preparation, the properfittings are selected from the data base and placed on the pipes at allpiping intersections automatically.

The color in which each type of pipe is displayed on-screen with thecurrent drawing may also be selected by a user. Within fittingselections 440, a user may select the color that each type of pipe(Drops, Sprigs, Branch Lines, Riser Nipples, Cross Mains, Feed Mains,Feed Risers, or Underground) will be. The colored bars next to each pipetype at 440 represents the color that such pipe type will be on-screen.To change a color, a user may click on any of the color bars to bring upa drop-down menu, from which a user may select a desired color from anumber of options.

Finally, the disclosed system for automatically selecting a pipeprovides for a number of additional user options. At 436, a user is ableto select the maximum branch line size from a drop-down listing ofvarious size options. The value chosen at 436 may be used in combinationwith the predetermined rules described above to allow the system toautomatically determine whether drawn pipes will be Branch Lines, CrossMains, or Feed Risers based on size and/or orientation. At 437, a useris able to select the ground level relative to the z axis. For example,a user may select “20 feet” to indicate that ground level should be setat 20 feet below true zero of the drawing along the z axis. The valuechosen at 437 may be used in combination with the predetermined rulesdescribed above to help the system automatically determine whether drawnhorizontal pipes, for instance, will be Underground type pipes or crossmains. Finally, a user may choose to force fittings at an intersectionof a Riser Nipple and a Branch Line by checking or clicking box 451. Auser may also separately choose to force size on size pipe outlets bychecking or clicking box 452.

Once all the options and parameters within Pipes tab 410 of FabricationStandards dialog box 400 have been chosen by a user, the system is readyto automatically select pipes. When a user draws a pipe with one of thevarious pipe-drawing tools or functions in AutoSPRINK or in another CADdrawing program, the pipe's parameters (Material, End preparation,Outlet, Color, Layer, Width, Type, etc.) are automatically drawn basedon the parameters mentioned above (i.e. size, orientation, location,association with other pipes etc). The system utilizes the location ofthe user-drawn pipe (both absolute location and relative location, i.e.,what type(s) of pipe are adjacent, for example) in combination with thevarious non-user-adjustable rules described above and theuser-adjustable parameters and options within Pipes tab 410 to determinethe pipe's parameters and then draw the pipe. It should be noted that asystem for automatically selecting or determining a pipe may be equippedwith manufacturer or vendor provided default settings for Pipes tab 410parameters and options so that the system is ready to automaticallyselect a pipe based solely on vendor or manufacturer specifiedparameters (such as BIM—Building Information Models—or other applicablestandards). Such standards may be used by the system if a user has notpreviously made his or her selections within Pipes tab 410. It shouldalso be noted that many additional rules, parameters, and options willbe apparent to those skilled in the art, and that any of theseadditional rules, parameters, and/or options may be incorporated intothe system for automatically selecting, determining or specifying apipe.

An additional powerful aspect of this feature is the system's ability toautomatically alter, revise, or change any of the selected pipingalready drawn in the main CAD design drawing by simply changing the pipegroup letter or number designation. This can also be done by selectingthe pipes and editing a pipe property dialog box by changing the pipegroup letter or number designation. FIG. 6 illustrates pipe propertydialog box 60, which may be accessed from the overall CAD program byselecting from a drop-down menu or by clicking on a pipe properties iconwithin a tool bar. A user may change any selected pipe by clicking onpipe group drop-down menu 61 and choosing a different pipe group letteror number designation. Alternatively, a user may select one or morepipes to be revised and use a modify pipe button from the piping toolbar. FIG. 7 illustrates Modify Selected Pipes dialog box 70. A user mayaccess Modify Selected Pipes dialog box 70 by clicking on a ModifySelected Pipes icon 72 within a tool bar. A user may use Modify SelectedPipes dialog box 70 to change the group letter or number designation byclicking on drop-down menu 71 and selecting a different pipe groupletter or number designation and then the OK button. All selected pipeswill be automatically changed to the parameters of the new pipe group.For example, changing a “T” pipe group (with threaded schedule 40 endpreparation and able to accept fittings in lieu of outlets) to a “W”pipe, will then automatically convert the pipe to schedule 10 pipe withgrooved end preparation with welded outlets in lieu of fittings becauseof user-chosen parameters previously selected for “W” pipes within thesystem for automatically determining a pipe.

A final CAD drawing add-on feature—system, method, and apparatus forplacing a flexible drop in a CAD drawing—will now be described. This mayalternatively be referred to as a Flex Drop Interface. As with the abovedescribed CAD drawing conflict resolution system and system forautomatically determining a system pipe type, the system for placing aflexible drop in a CAD drawing will generally be referred herein as asystem. This specification does, however, intend to include within itsscope the related methods of placing a flexible drop, the relatedapparatus for placing a flexible drop, and the related computer programfeature for placing a flexible drop. The system allows a user torelatively easily draw a flexible drop from a pipe to a sprinkler headin a CAD drawing. The system also allows flexible drops to beautomatically placed, and allows automatic hard piping from a remotesprinkler system pipe to within a specified distance from a pendentsprinkler head, and then for automatic placement of a flexible drop.

FIGS. 8 and 9 illustrate what a flexible drop is and how it may be usedto connect a sprinkler head to a sprinkler system pipe. Sprinkler systempipe 601 runs through a room of a building and connects to a watersource outside the scope of the figures. Sprinkler head 603 is locatedsome distance away from sprinkler system pipe 601. Sprinkler heads maybe placed at odd or irregular positions relative to the sprinkler systempipe, and so traditional rigid connecting pipes may not be appropriatefor connecting sprinkler head 603 to sprinkler system pipe 601. In suchcircumstances it is common to use so-called “flexible drops” to connectsprinkler heads to sprinkler system piping. These flexible drops (whichmay be referred to as Flex Drops) are usually formed of metal ring-likecomponents joined together to create a flexible metallic pipe. Suchflexible piping may be used in other contexts to flexibly connect anytwo components. For example, such flexible connects may be used to houseelectrical wiring which may be required to run in a flexible, or curved,pathway between two points. Flex Drops may be manufactured in anydesirable length, but common lengths are 24 inches, 36 inches, 48inches, 60 inches, and 72 inches. If a situation calls for connecting asprinkler head to a sprinkler system pipe located further away, a hardpipe arrangement of piping may be used to go from the sprinkler systempipe to within a close distance to the sprinkler head, and then a FlexDrop is used to finish the connection. Such a sprinkler system pipe→hardpipe→flex drop sprinkler head design can be seen in FIG. 9. Sprinklersystem pipe 601 connects to hard pipe 701 which connects to Flex Drop602 which finally connects to pendent sprinkler head 603.

The herein described system for placing a flexible drop pipe allows auser to automatically draw connections in a CAD drawing for a number ofsprinkler heads to one or more sprinkler system pipes simultaneously (orautomatically). This is desirable because CAD drawings of sprinklersystems, and building designs in general, can contain many sprinklerheads which each may be oddly or irregularly located. Having to drawconnections manually (meaning separately drawing in each pipe drop orflex drop) can be difficult and time consuming for a user. The presentinvention provides an utility for AutoSPRINK (or for another CAD drawingprogram) to automatically connect several sprinkler heads to sprinklersystem pipes at once, utilizing a number of user-adjustable parameters.The system allows a user to determine itself which sprinkler systempipes to connect by selecting the pipes and sprinkler heads to beconnected at the closest intervals, cutting down on decisions,calculations, and guesswork required by the user. The system may alsoallow a user to select a set of sprinkler heads, and have the systemautomatically determine which sprinkler system pipes to connect eachsprinkler head to, and then draw such connections. The system mayadditionally be capable of automatically drawing flexible drops when auser has specifically selected both sprinkler head locations andconnection point locations on one or more sprinkler system pipes.

The present invention is most useful by a AutoSPRINK or CAD program userat a point in time after the user has drawn the main piping throughouthis or her building design and has picked and placed sprinkler heads atdesired locations. Of course, a user may choose to use the presentinvention to connect a single sprinkler head, and then return to use thepresent invention again at a later time. But a user who has previouslydrawn at least one sprinkler head and at least a pipe may facilitate aflex drop connection by either selecting a Connect Pipes to Sprinklersfunction, a Connect Sprinklers to Pipes function, or a drop connectwizard within AutoSPRINK or another CAD program. In either case, theuser will be presented with a dialog box which will allow the user toselect various methods of connecting the sprinkler head(s) to thesprinkler pipe(s). Two of these options (there may be many more than twooptions) will be to use either a flex drop on its own, or a hard pipe toflex drop.

FIG. 10 illustrates an example of a Connect Pipes to Sprinklers dialogbox 800, which may be accessed by a user by clicking on an icon within aCAD program tool bar, by a user by selecting Connect Pipes to Sprinklerswithin a drop-down menu, or by a user initiating a drop connect wizard.Within Connect Pipes to Sprinklers dialog box 800, a user may selecteither Flex Drop radio button 801 or Pipe to Flex Drop radio button 802,if the user desires to use flexible drops to connect sprinkler heads tosprinkler system pipes. There may be many additional options withinConnect Pipes to Sprinklers dialog box 800, but these additional optionsmay be unrelated to Flex Drops. Ways of selecting either flexible dropoption (Flex Drop 801 or Pipe to Flex Drop 802) may vary. It may be thata user is faced with more traditional click-buttons or drop-down menuswhen deciding whether to choose flexible drops. If a user chooses toutilize Pipe to Flex Drop 802 option, the user may then additionally beable to choose the length of the flexible drop that follows the hardpiping (Flex drop 602 portion in FIG. 9).

Distance from pipe drop to sprinkler input 803 in FIG. 10 shows a userdetermined distance of “3′-0”, meaning three feet and zero inches. Auser may be restricted at input 803 and may only be able to choose froma predetermined list of allowable distances; two feet, three feet, orfour feet, for example. Or it may be that a user can select any distanceat input 803, such as four feet and seven-and-a-half inches, forexample. A user is then able to fine-tune Flex Drop properties byclicking on properties button 804, which may open up a new Flex Dropproperties dialog box (an example being Flex Drop properties dialog box1000 shown in FIG. 12).

FIG. 11 illustrates an example of a Connect Sprinklers to Pipes dialogbox. Connect Sprinklers to Pipes dialog box 900 may be accessed by auser by clicking on an icon within a CAD program tool bar, or may beaccessed by a user by selecting Connect Sprinklers to Pipes within adrop-down menu. User operation of Connect Sprinklers to Pipes dialog box900 is very similar to user operation of Connect Pipes to Sprinklersdialog box 800 in FIG. 10. Within Connect Sprinklers to Pipes dialog box900, a user may select either Flex Drop radio button 901 or Pipes toFlex Drop radio button 902 if the user desires to use flexible drops toconnect sprinkler heads to sprinkler system pipes. There may be manyadditional options within Connect Sprinklers to Pipes dialog box 900,but these additional options may be unrelated to Flex Drops. Ways ofselecting either flexible drop option (Flex Drop 901 or Pipe to FlexDrop 902) may vary. It may be that a user is faced with more traditionalclick-buttons or drop-down menus when deciding whether to chooseflexible drops.

If a user chooses to utilize Pipe to Flex Drop 902 option, the user maythen additionally be able to choose the length of the flexible drop thatfollows the hard piping (Flex drop 602 portion in FIG. 7). Distance frompipe drop to sprinkler input 903 in FIG. 11 is grayed-out because in theFIG. 11 example the user has selected Flex Drop radio button 901 and soinput 903 is inaccessible. But if a user instead selects Pipe to FlexDrop 902, input 903 will then be accessible and the user will be able toinput the desired distance at 903. A user may be restricted at input 903and may only be able to choose from a predetermined list of allowabledistances; two feet, three feet, or four feet, for example. Or it may bethat a user can select any distance at input 903, such as four feet andseven-and-a-half inches, for example. A user is then able to fine-tuneFlex Drop properties by clicking on properties button 904, which mayopen up a new Flex Drop properties dialog box (an example being FlexDrop properties dialog box 1000 shown in FIG. 12).

FIG. 12 illustrates an example of a Flex Drop properties dialog box andalso illustrates an example of a flexible drop as it may appear withinan overall CAD drawing as seen by a user on his or her computer screen.Flex Drop properties dialog box 1000 may be accessible in a number ofways. As discussed above, a user may be able to click on a button withineither a Connect Pipes to Sprinklers dialog box or a Connect Sprinklersto Pipes dialog box. Or, a user may be able to directly access Flex Dropproperties dialog box 1000 by either clicking on an icon within a CADprogram tool bar or by selecting a Flex Drop properties option within aCAD program drop-down menu. Flex Drop properties dialog box 1000 mayhave several user options within it, but the main purpose of dialog box1000 is to present information to the user. After the system has placedflexible drops to connect sprinkler heads to the nearest or bestsprinkler system pipes, a user is able to access Flex Drop propertiesdialog box 1000 to view information and parameters of the automaticallyplaced flexible drops.

There may be several available user options within Flex Drop propertiesdialog box 1000. At 1010, a user may be able to choose a type offlexible drop (Stainless, Aluminum, etc.), male or female typeconnectors, a manufacturer (a specific company or generic), a finish(polished, none, etc.), a description (FlexHead 48″, FlexHead 36″,FlexHead 24″, etc.) and a size (1×½, 2×1, etc.). At length 1020, a useris able to see precisely how long a flex drop drawn by the system forplacing a flexible drop is. The example in FIG. 12 shows a length at1020 of “4′-0” or four feet and zero inches. This is the true length ofthe curved flex drop. A user may additionally be able to input ahydraulic equivalent length he or she wishes the system to allow for.

When a user manually draws a flex drop from a sprinkler head to asprinkler system pipe, or visa versa, the flex drop piping will stop atthe manufacturer specified length. This manufacturer specified length isshown at 1010 in FIG. 12, in the Description box. The example in FIG. 12at 1010 shows a manufacturer specified length of 48 inches (“FlexHead®(48″)”). For example, if a user connects a sprinkler head to a sprinklersystem pipe that is 60 inches away, the user will see a visible gap of12 inches (the difference between the 60 inch distance and the 48 inchflex drop). This gap will warn the user that the specified flex drop isnot long enough, which may be remedied by either using a longer flexdrop or by moving the pipe closer to the sprinkler head.

At vertices 1040 in FIG. 12, a user is able to see locations of thethree vertices of the flex drop. A flex drop has three vertices whichmay each be located by x, y, and z coordinates. In FIG. 12, threevertices for a flex drop can be seen at 1041, 1042, and 1043. 1041 isthe end of the flex drop which connects to pipe 601. 1042 is the midpoint of the curved portion of the flex drop. 1043 is the end of theflex drop which connects to sprinkler head 603. Vertices 1040 list thex, y, and z coordinates for a flex drop. A user is also able to choosewhether to simulate the drawn and presumably connected sprinklers. At1050 a user can click a box to simulate one or more sprinklershydraulically. At 1060 a user can click a box to simulate one or moresprinklers visually.

After the system has automatically placed, or drawn, one or more flexdrops, a user is able to pull or push a flex drop to change its curve,orientation or appearance. FIG. 12 illustrates this ability. Grips 1071are provided surrounding a previously placed flex drop. A user may beable to click on one of grips 1071, and then drag that grip to a newlocation. Dragging a grip 1071 will automatically change the appearanceof the related flex drop, so that it curves in a slightly different way,for example. FIG. 12 shows four grips 1071, but more grips or less gripsmay be provided. More grips 1071 would enable a user to more preciselycontrol the appearance of a flexible drop.

Finally, it should be noted that flex drops automatically (or manuallywith a user's guidance) placed by the system for placing flexible dropsare additionally capable of being hydraulically calculated as part of anoverall piping or sprinkler system. Such flex drops are also capable ofbeing simulated with water flow. In other words, these flex drops placedby the herein disclosed system become integrated into the overall CADdrawing and may be simulated similarly to any other pipe or pipingwithin the CAD drawing.

While the present invention has been illustrated and described herein interms of a preferred embodiment and several alternatives associated withadd-on features for automatically improving, adding additional featuresto, and processing various piping-related features of a computerautomated design application, it is to be understood that the variouscomponents of the combination and the combination itself can have amultitude of additional uses and applications. For example, the systemfor resolving CAD drawing conflicts herein disclosed can easily beadapted to other settings or uses such CAD drawing of smaller mechanicalparts or other construction systems such as electrical systems orlavatory plumbing systems. As another example, the system fordetermining a pipe type can be applied to other CAD-related design, suchas designing electrical schematics wherein the disclosed system could beused to determine types of wiring to be used throughout the schematic.As another example, the system for placing flexible drops can beutilized to draw non-sprinkler system connections, such as flexiblehousing for electrical wiring. Accordingly, the invention should not belimited to just the particular descriptions and various drawing figurescontained in this specification that merely illustrate one or morepreferred embodiments and applications of the principles of theinvention.

It should be apparent that the examples discussed above are onlypresented as examples. The various user-accessible menus, buttons, andinterfaces are only one way to accomplish the more generally describedsystems, methods, apparatuses, and computer programs. For example, wherecertain features or user options are described as buttons, it may beapparent to those skilled in the art that the same function can beaccomplished by using radio buttons, drop-down menus, or check-box-typeoptions instead. All such available possibilities are intended to becovered by this specification.

Finally, it should be noted that where this specification describes asystem for accomplishing a CAD-related task, it is intended to coverrelated methods of accomplishing the CAD-related task, relatedapparatuses for accomplishing the CAD-related task, and related computerprograms for accomplishing the CAD-related task. For example, anapparatus for accomplishing the CAD-related task would be comprised of acentral processing unit (CPU) containing the code for the carrying outthe CAD-related tasks and capable of processing user-input options, oneor more input devices such as a keyboard and mouse, and a computerscreen.

1. A method for determining and drawing a pipe type for use within asection of piping within a CAD drawing, comprising the steps of:receiving a location for the section within the drawing from a user;receiving a pipe diameter for the section from the user; receiving oneor more parameters selected by the user for determining the pipe type;identifying one or more additional parameters based on the location ofthe section within the CAD drawing; determining the pipe type based onthe location for the section, the pipe diameter, the one or moreparameters, the additional parameters, and a set of predeterminedpipe-interaction rules; and drawing the section within the CAD drawingusing the pipe type determined in the determining step.